package com.hjp.designmode.state;

/**
 * @Description: 意图:允许对象在内部状态发生改变时改变它的行为，对象看起来好像修改了它的类。
 * 使用场景：1、行为随状态改变而改变的场景。 2、条件、分支语句的代替者。
 * @Author: huangjp6
 * @Date: 2022/3/17 14:39
 */
public class StatePatternDemo {
    public static void main(String[] args) {
        Context context = new Context();

        StartState startState = new StartState();
        startState.doAction(context);

        System.out.println(context.getState().toString());

        StopState stopState = new StopState();
        stopState.doAction(context);

        System.out.println(context.getState().toString());
    }
}